package org.mebusw.vo;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/*
 * The base class of games which are stored in database.
 */
public abstract class GameTable implements Serializable {
	public final static String DAVINCI_CODE="Davinci Code";
	public final static String LOST_CITIES="Lost Cities";
	public static final int UNKNOWN_PLAYER = -1;

	protected int gid;
	protected String description;
	/** whose turn is it now? */
	protected int currPlayer;
	protected int state;
	protected int playerCount;
	protected List<Player> players;
	protected String gameName;
	protected Date createDate;
	protected Date lastMove;

	public int getGid() {
		return gid;
	}

	public void setGid(int gid) {
		this.gid = gid;
	}

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public String getGameName() {
		return gameName;
	}

	public void setGameName(String gameName) {
		this.gameName = gameName;
	}

	public int getCurrPlayer() {
		return currPlayer;
	}

	public void setCurrPlayer(int currPlayer) {
		this.currPlayer = currPlayer;
	}

	public void setState(int state) {
		this.state = state;
	}

	public int getState() {
		return state;
	}

	public void setPlayerCount(int playerCount) {
		this.playerCount = playerCount;
	}

	public int getPlayerCount() {
		return playerCount;
	}

	public List<Player> getPlayers() {
		return players;
	}

	public void setPlayers(List<Player> players) {
		this.players = players;
	}

	public Date getCreateDate() {
		return createDate;
	}

	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

	public Date getLastMove() {
		return lastMove;
	}

	public void setLastMove(Date lastMove) {
		this.lastMove = lastMove;
	}

}
